package responsibilitychain.source;

/**
 * 定义一个处理请示的接口
 *
 * 职责链模式(Chain Of Responsibility)
 * 使多个对象都有机会处理请求，从而避免请求的发送者和接收者之间的耦合
 * 将这个对象连成一条链，并沿着这条链传递该请求，直到有一个对象处理为止
 *
 * 接收者与发送请求者都没有对方的明确信息，且链中的对象自己也并不知道链的结构
 * 简化对象的相互连接，它们仅需保持一个指向其后继者的引用，不需要保持他所有的候选者的引用
 *
 * 在客户端定义链的结构，增强了给对象指派职责的灵活性
 *
 * @author Chen Guang
 * @date 2019/4/23 0023 上午 9:40
 */
public interface Handler {

    void setSuccessor(Handler successor);

    void handleRequest(int request);
}
